home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / et / et-2_2.lha / et2.2 / src / Filler.C < prev    next >
C/C++ Source or Header  |  1990-08-17  |  962b  |  55 lines

  1. //$Filler$
  2.  
  3. #include "Filler.h"
  4.  
  5. //---- Filler ------------------------------------------------------------------
  6.  
  7. MetaImpl(Filler, (T(minsize), TP(ink), 0));
  8.  
  9. Filler::Filler(Point extent, int flags)
  10. {   
  11.     ink= gInkNone;
  12.     contentRect.extent= minsize= extent;
  13.     SetFlag(flags & (eVObjHFixed | eVObjVFixed));
  14. }
  15.  
  16. Filler::Filler(Point extent, Ink *ik, int flags)
  17. {   
  18.     ink= ik;
  19.     contentRect.extent= minsize= extent;
  20.     SetFlag(flags & (eVObjHFixed | eVObjVFixed));
  21. }
  22.  
  23. Metric Filler::GetMinSize()
  24. {
  25.     return Metric(minsize);
  26. }
  27.  
  28. void Filler::Draw(Rectangle r)
  29. {
  30.     if (ink != ePatNone)
  31.     GrPaintRect(r, ink);
  32. }
  33.  
  34. Ink *Filler::SetInk(Ink *ik, bool redraw)
  35. {
  36.     Ink *oldink= ink;
  37.     ink= ik;
  38.     if (redraw)
  39.     ForceRedraw();
  40.     return oldink;
  41. }
  42.  
  43. ostream& Filler::PrintOn(ostream &s)
  44. {
  45.     VObject::PrintOn(s);
  46.     return s << minsize SP << ink SP;
  47. }
  48.  
  49. istream& Filler::ReadFrom(istream &s)
  50. {
  51.     VObject::ReadFrom(s);
  52.     return s >> minsize >> ink;
  53. }
  54.  
  55.